package com.ly.pj.common.pool;

import org.springframework.context.annotation.Lazy;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

@Lazy
@Scope//默认是@Scope("singleton")用于指定对象的作用域，默认为单例作用域（一个JVM中名字相同的Bean只有一个）配合@Lazy使用
//@Scope("prototype")//表示多例作用域，此类实例与Lazy无关，默认何时需要何时创建。并且不会存储到spring框架中
@Component
public class ObjectPool {
    public ObjectPool(){
        System.out.println("ObjectPool()");
    }
    @PostConstruct
    public void init(){
        System.out.println("init()");
    }
    @PreDestroy
    public void destroy(){
        System.out.println("destroy()");
    }
}
